/**
 * 
 */
package org.yelongframework.model.generator.interceptor;

import org.yelongframework.lang.Nullable;
import org.yelongframework.model.generator.manager.GenModelAndTable;
import org.yelongframework.model.generator.manager.wrapper.GenModelAndTableWrapper;

/**
 * 模型与表过滤器。返回null将不会生成模型 可以使用{@link GenModelAndTableWrapper}对模型进行包装从而返回自定义的模型属性
 * 
 * @since 1.0.0
 */
@FunctionalInterface
public interface GMATModelGenerateInterceptor {

	/**
	 * 拦截处理操作
	 * 
	 * @param genModelAndTable 模型表
	 * @return 拦截处理后的模型表
	 */
	@Nullable
	GenModelAndTable process(GenModelAndTable genModelAndTable);

}
